SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

CREATE PROCEDURE [dbo].[pje_porTitulos] @idInscripcion as integer ,@pje as float output,@resultado as int  AS
set nocount on --para anular el trafico econ el cliente (no salen los print)
set dateformat mdy 

declare  @idAgente as int,@idCargoGenerico as int,@idAsignaturaGenerica as int, @idTipoConvocatoria as int ,@idlocalidad as int, @FechaLimite as datetime,@fechaCierreDeInscripciones as datetime,@nivel_insc as int,@ciclo as int
declare @titulo as integer, @fechaEgreso as datetime,@idCapacitacion as integer, @FechaCapacitacion as datetime
declare @tieneCapacitacion as char(1) , @tieneCapacitacionParaHabilitantes as char(1)
declare @Titulo1 as int,@Titulo2 as int,@Titulo3 as int,@Categoria as float
declare @AntiguedadGeneral as float,@catPorAntGeneral as float,@AntiguedadNivel as float,@CatPorAntNivel as float,@AntiguedadModalidad as float,@CatPorAntModalidad as float,@AntiguedadCargo as float,@CatPorAntCargo as float,@horasDeCursooCapacitacion as float, @CatPorHorasDeCurso as float,@EsTituloEspecifico as char(1),@esprofesorado as char(1),@Fecha_Egreso as datetime
declare @categoriaDefinitiva as float, @categoriaAmpliada as int
declare @AñosServicioGenerales as float, @AñosServicioCargo as float, @AñosServiciosTecnicos as float,@AñosServiciosNivel as float,@AñosServiciosModalidad as float
declare @AñosServiciosProvincia as float
declare @i as int,@Modalidad as int
declare @modalidadComun as int, @modalidadTecnica as int, @modalidadAgrotecnica as int, @modalidadArtistica as int
declare @tituloValorado as int,@promedioConsiderado as float,@NroRegistro as int,@promedio as float,@NroRegistroConsiderado as varchar
declare @docentePorAntGeneral as int,@docentePorAntNivel as int,@docentePorAntModalidad as int,@docentePorAntCargo as int,@docentePorHsCurso as int
declare @exedente as int,@fechaConsiderada as datetime,@FechaAuxiliar as datetime 
declare  @tieneTituloEspecifico as int,@puntajePorTitulo as float
declare @PorcentajeAprobado as float
declare @PorcentajePedAprobado as float
declare @AntiguedadTitulo as float
declare @n as int, @FechaCap as datetime --para guardar el idcapacitacion cuando hay concurrencia de titulos con años de curso o capacitacion
declare  @grupoIncumbencia as int
declare  @grupoIncumbencia1 as int
declare @c1 as int -- antigüedad titulo
declare @c2 as int --  promedio
declare @c3 as int --Título específico
declare @c4 as int --  Título registrado
declare @c5 as int --  Título valorado
declare @TituloConcurrente as int --  Cuando tiene concurrencia de titulos 

DECLARE @Error INT

BEGIN TRANSACTION
             SET @ERROR=0


		




--DECLARE @CumpleAñosCargo as datetime

-- ojooooooo hay que cargar en el anexo todas las combinaciones de : los titulos de profesor  con capacitación docente para los cargos

-- la capacitación xx (la de AMET para los Técnicos de las epet) hay que cargarla también directamente en el anexo como habilitante con capacitación docente

--@ciclo = 1 indefinido , 2=tercer ciclo

--TRAEMOS TODOS LOS DATOS DE LA INSCRIPCION A PARTIR DEL PARAMETRO DEL SP

select  @idAgente=i.Agente,@IdcargoGenerico = i.CargoGenerico,@IdAsignaturaGenerica=i.AsignaturaGenerica,@idtipoConvocatoria=Conv.TipoConvocatoria,@FechaLimite=Conv.FechaLimite,@fechaCierreDeInscripciones=Conv.fechaCierre,@nivel_insc = i.nivel,@ciclo=isnull(ciclo,1)
	from 
	tb_inscripcionesConvocatorias i 
		join tb_Convocatorias conv on i.Convocatoria=conv.idConvocatoria 
	where i.idInscripcionConvocatoria=@idInscripcion

set @pje=0

--print 'Nivel de la inscr'
--print  @nivel_insc
-- NO SERA NECESARIO EL SIGUIENTE IF PORQUE YA NO ESTARIA MAS LOS EGB Y SOLO QUEDARIAN LOS NIVELES: PRIMARIO Y SECUNDARIO
--if @nivel_insc = 3 and @ciclo = 2 set  @nivel_insc=4
/*
select @grupoIncumbencia=case
	when @nivel_insc = 2 then 572
	when @nivel_insc = 3 then 573
	when @nivel_insc = 4 then 571
end

select @grupoIncumbencia1=case
	when @nivel_insc = 2 then 570
	when @nivel_insc = 3 then 570
	when @nivel_insc = 4 then 571
end


print 'incumbencia' + cast (@grupoIncumbencia as varchar )

*/

--if  @idTipoConvocatoria  in (1,2,4,5)  -- TipoConvocatoria = 1  ingreso,interinatos y suplencias
--begin


----en primer lugar veo si el agente tiene capacitacion docente
-- luego veo si tiene titulo de profesor ya que los profesores pasan a ser con capacitacion docente para todos los cargos a que aspiren
--SETEA LA VARIABLE IDCAPACITACION=-1 SI ES NULA LA CAPACITACION
--DESDE AQUI METEMOS MANO CON LOS CHANGOS PARA ADAPTAR EL CALCULO
--Entrada es Asignaturagenerica de la inscripcion


	--PRIMERO TRAEMOS LOS TITULOS DEL AGENTE PARA COMPARARLOS--
	--TITULO DOCENTE (titulo3)
	
--IF ANIDADO - EN EL PRIMER IF PREGUNTAMOS SI EXISTE UN TITULO DEL AGENTE CON TITULO 1 DE LA TABLA ANEXOTITULOS QUE CORRESPONDAN CON LA ASIGNATURA GENERICA EN QUE SE INSCRIBE
  if(exists( SELECT t.titulo from tb_titulosdelagente t where t.agente=@idagente and t.titulo iN(select a.titulo3 from tb_anexotitulos a where a.asignaturagenerica=@idasignaturagenerica)))
   begin
   --VARIABLE PUNTAJE SETEADA EN 10 (TITULO DOCENTE Y ESPECIFICO)
   set @pje=10
   end
   --IF ANIDADO - EN EL SEGUNDO IF PREGUNTAMOS SI EXISTE UN TITULO DEL AGENTE CON TITULO 2 DE LA TABLA ANEXOTITULOS QUE CORRESPONDAN CON LA ASIGNATURA GENERICA EN QUE SE INSCRIBE
   else if(exists (SELECT t.titulo from tb_titulosdelagente t where t.agente=@idagente and t.titulo iN(select a.titulo2 from tb_anexotitulos a where a.asignaturagenerica=@idasignaturagenerica)))
   begin
   --VARIABLE PUNTAJE SETEADA EN 6 (TITULO HABILITANTE)
   set @pje=6
   end
   --IF ANIDADO - EN EL TERCER IF PREGUNTAMOS SI EXISTE UN TITULO DEL AGENTE CON TITULO 3 DE LA TABLA ANEXOTITULOS QUE CORRESPONDAN CON LA ASIGNATURA GENERICA EN QUE SE INSCRIBE
   else if(exists (SELECT t.titulo from tb_titulosdelagente t where t.agente=@idagente and t.titulo iN(select a.titulo1 from tb_anexotitulos a where a.asignaturagenerica=@idasignaturagenerica)))
   begin
   --VARIABLE PUNTAJE SETEADA EN 3 (TITULO SUPLETORIO)
   set @pje=3
   end
   

--FIN FIN HASTA AQUI METEMOS MANO CON LOS CHANGOS PARA ADAPTAR EL CALCULO
/*
select top 1 @idCapacitacion=isnull(CapAg.capacitacion,-1),@FechaCapacitacion=CapAg.fecha,@tieneCapacitacionParaHabilitantes=isnull(cap.esSoloParaHabilitantes,'N') -- le puse TOP 1 para que seleccione la capacitacion mas vieja
		from
		tb_capacitacionesDelAgente CapAg
		join tb_capacitaciones Cap on CapAg.Capacitacion=Cap.idCapacitacion
		join tb_anexoCapacitaciones A on CapAg.capacitacion=a.capacitacion 
                             join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=Cap.GrupoIncumbencias
		join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia
	where CapAg.agente=@idAgente and A.cargoGenerico=@IdCargoGenerico 
	and A.asignaturaGenerica=@IdAsignaturaGenerica   AND H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica  and CursoOCapacitacion=1 and CapAg.FechaPresentacion <= @FechaLimite --supongo que si CursoOCapacitacion=2 se trata de una capacitacion docente
	order by CapAg.Fecha 


 --  esto no sería necesario si agregamos en el anexo todas las relaciones entre los titulos de PROFESOR con los cargos para los que son habilitantes , poniéndolos con categoría 2 "habil. con capacitacion" para los cargos
	if @nivel_insc=4 --NIVEL 4 CORRESPONDE A SECUNDARIO
	begin
		select top 1 @titulo=isnull(titulo,-1),@fechaEgreso=fechaEgreso -- le puse top 1 para que seleccione el titulo de mayor antigüedad
			from
			tb_titulosDelAgente TA
			join tb_titulos T on TA.titulo=T.IDtitulo
			join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=Ta.GrupoIncumbencia
			join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia		
		where TA.agente=@idAgente and esprofesorado='S' and h.cargoGenerico=@IdCargoGenerico 
		and h.asignaturaGenerica=@IdAsignaturaGenerica and   TA.FechaPresentacion <= @FechaLimite--AND (G.IDgrupoIncumbencia= @grupoIncumbencia OR  G.IDgrupoIncumbencia=99)
		order by TA.FechaEgreso 
		print 'tiene cap para hab'
		print @titulo
		set @tituloconcurrente=@titulo
	end

	if  @idCapacitacion >= 0 
	begin
		set  @tieneCapacitacion='S'
		print 'tiene capacitacion'
		if @fechalimite < @FechaCapacitacion  set @FechaCapacitacion=@fechalimite
		print ' fecha capacitacion ' + cast(@FechaCapacitacion as varchar)
	end

	if  @Titulo >= 0 
	begin
		set @tieneCapacitacionParaHabilitantes='S'
		print 'tiene capacit.p/habilitantes'
		if @fechalimite < @FechaEgreso  set @FechaEgreso=@fechalimite
	end
print 'agente' + cast(@idagente as varchar)
print 'cargo' + cast (@idcargogenerico as varchar)
print 'Asig' + cast (@idasignaturagenerica as varchar)

	declare a cursor FORWARD_ONLY FOR
--leo del anexo de titulos 
	select  DISTINCT Titulo1,Titulo2,Titulo3,categoria,AntiguedadGeneral,catPorAntiguedadGeneral,AntiguedadNivel,CatPorAntiguedadNivel,AntiguedadModalidad,CatPorAntiguedadModalidad,AntiguedadCargo,CatPorAntiguedadCargo,horasDeCursooCapacitacion ,CatPorHorasDeCurso,EsTituloEspecifico,esprofesorado,FechaEgreso  
		from tb_titulosDelAgente TA
		join tb_titulos T on TA.titulo=T.idTitulo
		join tb_AnexoTitulos A on TA.titulo=A.Titulo3 
		join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=Ta.GrupoIncumbencia
		join tb_incumbencias H on G.idGrupoIncumbencia=H.grupoIncumbencia		
		join tb_categoriasDeTitulo C on C.idcategoria=A.Categoria
	where   TA.agente=@idAgente and A.cargoGenerico=@IdCargoGenerico and A.asignaturaGenerica=@IdAsignaturaGenerica AND H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica  and TA.FechaPresentacion <= @FechaLimite--and (G.IDgrupoIncumbencia= @grupoIncumbencia or G.IDgrupoIncumbencia= @grupoIncumbencia1 OR  G.IDgrupoIncumbencia=99) 
		and (titulo1 is NULL or titulo1 in (select titulo from tb_titulosDelAgente TT join tb_gruposDeIncumbencias GG on GG.idGrupoIncumbencia=TT.GrupoIncumbencia join tb_incumbencias hh on GG.idGrupoIncumbencia=hh.grupoIncumbencia	where TT. Agente = @idAgente  and TT.FechaPresentacion <= @FechaLimite and hh.cargoGenerico=@IdCargoGenerico and hh.asignaturaGenerica=@IdAsignaturaGenerica))
		and (titulo2 is NULL or titulo2 in (select titulo from tb_titulosDelAgente TT join tb_gruposDeIncumbencias GG on GG.idGrupoIncumbencia=TT.GrupoIncumbencia join tb_incumbencias hh on GG.idGrupoIncumbencia=hh.grupoIncumbencia	where TT.Agente = @idAgente   and TT.FechaPresentacion <= @FechaLimite and hh.cargoGenerico=@IdCargoGenerico and hh.asignaturaGenerica=@IdAsignaturaGenerica))
--	order by categoria Asc,titulo1,titulo2,titulo3, FechaEgreso Asc
	order by categoria Asc, FechaEgreso Asc
	SET @Error = @@ERROR 
	IF @Error <> 0 GOTO Salir
	open a
	--fetch next from a into @tituloAgente,@promedio,@registrado,@FechaEgresoAgente,@Titulo1,@Titulo2,@Titulo3,@categoria,@AntiguedadGeneral,@catPorAntGeneral,@AntiguedadNivel,@CatPorAntNivel,@AntiguedadModalidad,@CatPorAntModalidad,@AntiguedadCargo,@CatPorAntCargo,@EsTituloEspecifico   
	fetch next from a into @Titulo1,@Titulo2,@Titulo3,@categoria,@AntiguedadGeneral,@catPorAntGeneral,@AntiguedadNivel,@CatPorAntNivel,@AntiguedadModalidad,@CatPorAntModalidad,@AntiguedadCargo,@CatPorAntCargo,@horasDeCursooCapacitacion , @CatPorHorasDeCurso,@EsTituloEspecifico ,@esprofesorado ,@Fecha_Egreso 

--print 'agente' + cast(@idagente as varchar)
--print 'cargo' + cast (@idcargogenerico as varchar)
--print 'Asig' + cast (@idasignaturagenerica as varchar)

--print '@@FETCH_STATUS ' + cast (@@FETCH_STATUS as varchar)
	set @categoriaDefinitiva=9
	set @categoriaAmpliada=9
	set @tieneTituloEspecifico=0


	print'titulo1, titulo2, titulo3    (primero)'
		print @titulo1
		print @titulo2
	print @titulo3
	print 'Fecha Egreso inicial'
	print @fecha_Egreso
 set @tituloValorado = @titulo3
print 'categoria'
print @categoria 
	set @categoria= isnull (@categoria,7)

	--en EGB si tiene el 60 % de la carrera de ingles pasa a ser supletorio para esta asignatura
		/*if @@FETCH_STATUS <> 0 --esto significa que no encontró nada en el anexo de titulos,  en este caso si tiene el 75% de la carrera aprobada es supletorio para ingles
		begin
			  	select @tituloValorado = EP.titulo, @PorcentajeAprobado=(CantidadMateriasAprobadas*100 / MateriasPlan)  --distinct act.Titulo1,act.Titulo2,AcT.cargoGenerico,AcT.asignaturaGenerica,MateriasPlan,CantidadMateriasAprobadas,valorDeAcumulacion,(CantidadMateriasAprobadas *100/ MateriasPlan),(cantidadMatPedagogicasAprobadas*100 / TotalMAtPedagogicasPlan)
				from
					tb_EstudiosParciales EP
					join tb_anexoTitulos Anexo on EP.titulo=anexo.titulo3 
				 where anexo.categoria=1 and EP.agente=@idAgente and Anexo.cargoGenerico=@IdCargoGenerico and Anexo.asignaturaGenerica=@IdAsignaturaGenerica and (CantidadMateriasAprobadas*100 / MateriasPlan) >= 60 and (cantidadMatPedagogicasAprobadas*100 / TotalMAtPedagogicasPlan) >= 60
				 if isnull (@PorcentajeAprobado,0) >= 60 and @IdAsignaturaGenerica in  (7800,2800,35,405,320,620) set @categoriaDefinitiva = 5  -- con el 60% de la carrera pasa a ser supletorio para ingles !!!!!!!!!!!!!!ojoooooooooooo ver esta chanchadita !!!!!!!!!!!
		end*/

	if @categoriaDefinitiva = 9 or @categoria >=4
			begin
                                                                
			  	select @tituloValorado = EP.titulo, @PorcentajeAprobado=(CantidadMateriasAprobadas*100 / (case when MateriasPlan=0 then 1 else MateriasPlan end)) , @PorcentajePedAprobado= (cantidadMatPedagogicasAprobadas*100 /case when TotalMAtPedagogicasPlan=0 then 1 else TotalMAtPedagogicasPlan end)  --distinct act.Titulo1,act.Titulo2,AcT.cargoGenerico,AcT.asignaturaGenerica,MateriasPlan,CantidadMateriasAprobadas,valorDeAcumulacion,(CantidadMateriasAprobadas *100/ MateriasPlan),(cantidadMatPedagogicasAprobadas*100 / TotalMAtPedagogicasPlan)
				from
					tb_EstudiosParciales EP
					join tb_anexoTitulos Anexo on EP.titulo=anexo.titulo3 
					join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=EP.GrupoIncumbencias
					join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia		
				 where anexo.categoria=1 and EP.agente=@idAgente and
					      Anexo.cargoGenerico=@IdCargoGenerico and 
					      Anexo.asignaturaGenerica=@IdAsignaturaGenerica and EP.FechaPresentacion <= @FechaLimite AND H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica AND
					      (CantidadMateriasAprobadas*100 / (case when MateriasPlan=0 then 1 else MateriasPlan end)) >= 60 
					--	 and (cantidadMatPedagogicasAprobadas*100 /case when TotalMAtPedagogicasPlan=0 then 1 else TotalMAtPedagogicasPlan end) >= 75  -- agregado el 12/07/05 porque daba mal estudios parciales  27844292  da prof.ynconcluso y no tiene 75% de pedag. aprobadas
				print '% aprobado'
				print @PorcentajeAprobado
				 if (isnull (@PorcentajeAprobado,0) >= 60 and @IdAsignaturaGenerica in ( 2800, 7800 , 9180,9189) ) set @categoriaDefinitiva = 6  -- !!!!!!!!!!!!!!ojoooooooooooo ver esta chanchadita !!!!!!!!!!!
				 if   isnull (@PorcentajeAprobado,0) >= 75  and  isnull (@PorcentajePedAprobado,0) >= 75 and  (@nivel_insc in (4,5) or (@nivel_insc =3  and @ciclo=2)) set @categoriaDefinitiva = 4
				 if isnull (@PorcentajeAprobado,0) >= 60 and @IdAsignaturaGenerica in  (35,405,320,620) set @categoriaDefinitiva = 6  -- con el 60% de la carrera pasa a ser supletorio para ingles !!!!!!!!!!!!!!ojoooooooooooo ver esta chanchadita !!!!!!!!!!!
				print 'categoria definitiva'
				print @categoriadefinitiva

			end

	print 'categoria inicial'
	print @categoria

	while @@FETCH_STATUS = 0
	begin
--		print' entro al while del cursor'
		set @resultado=0
Print 'Categoria y Categoria definitiva'
print	@categoria 
print	@categoriadefinitiva 


--*********************************************************************************************************************************
--INICIO CALCULO ANTIGUEDAD DE TITULO - PARA ESO BUSCA EL TITULO MAS VIEJO

		if @categoria < @categoriaDefinitiva or @catPorAntGeneral < @categoriaDefinitiva  or @catPorAntNivel < @categoriaDefinitiva or @catPorAntModalidad < @categoriaDefinitiva or @catPorAntCargo < @categoriaDefinitiva or @CatPorHorasDeCurso < @categoriaDefinitiva
		begin --busco el titulo mas viejo para calcular antiguedad del titulo		        
--		  print  ' Tetas ........................................................'

			if @categoria < @categoriaDefinitiva 	begin
					if @esTituloEspecifico = 'S' and @categoria=1 set @tieneTituloEspecifico=-2 else set @tieneTituloEspecifico=-1
					set @fechaEgreso=@Fecha_egreso --esto es para el caso de que tenga combinación de 3 titulos (uno de los cuales es una capacitacion docente)	
                                                                  --              print 'antiguedad'
                                                                       --        print  @fechaEgreso
--					print @titulo3	
					set @categoriaDefinitiva=@categoria
					if @titulo2 is null and @titulo1 is null --en este caso tiene un solo titulo 
					select top 1 @tituloValorado = titulo,@fechaEgreso=fechaEgreso,@promedio=promedio,@NroRegistro=NumeroRegistro from tb_titulosDelAgente T join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=T.GrupoIncumbencia
join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia	where agente=@idAgente and T.FechaPresentacion <= @FechaLimite  and titulo=@titulo3 and  H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica order by fechaEgreso Asc
					if @titulo1 is null and @titulo3 is null --en este caso tiene un solo titulo 
					select top 1 @tituloValorado = titulo,@fechaConsiderada=fechaEgreso,@promedio=promedio,@NroRegistro=NumeroRegistro from tb_titulosDelAgente T join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=T.GrupoIncumbencia
join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia where agente=@idAgente and T.FechaPresentacion <= @FechaLimite and titulo=@titulo2  and  H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica order by fechaEgreso Asc
					if @titulo2 is null and @titulo3 is null --en este caso tiene un solo titulo 
					select top 1 @tituloValorado = titulo,@fechaEgreso=fechaEgreso,@promedio=promedio,@NroRegistro=NumeroRegistro from tb_titulosDelAgente T join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=T.GrupoIncumbencia
join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia where agente=@idAgente and T.FechaPresentacion <= @FechaLimite and titulo=@titulo1 and  H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica order by fechaEgreso Asc
					if @titulo1 is null  and @titulo2 is not null --en este caso tiene concurrencia de  dos titulos (T3 y T2) 
									 --de los dos titulos considero el mas viejo para calcular antiguedad de titulo, promedioo, etc
					select top 1 @tituloValorado = titulo,@fechaEgreso=fechaEgreso,@promedio=promedio,@NroRegistro=NumeroRegistro from tb_titulosDelAgente T join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=T.GrupoIncumbencia
join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia where agente=@idAgente and T.FechaPresentacion <= @FechaLimite  and titulo in (@titulo3,@titulo2) and  H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica order by fechaegreso ASC  --SE CAMBIO EL 26/07/05 ANTES DESC
					if @titulo2 is null  and @titulo1 is not null --en este caso la concurrencia de los dos titulos(T1 y T3) lo hace docente
									 --de los dos titulos considero el mas viejo para calcular antiguedad de titulo , promedio, etc
					select top 1 @tituloValorado = titulo,@fechaEgreso=fechaEgreso,@promedio=promedio,@NroRegistro=NumeroRegistro from tb_titulosDelAgente T join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=T.GrupoIncumbencia
join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia where agente=@idAgente and T.FechaPresentacion <= @FechaLimite  and titulo in (@titulo1,@titulo3) and  H.cargoGenerico=@IdCargoGenerico AND H.asignaturaGenerica=@IdAsignaturaGenerica order by fechaegreso ASC --SE CAMBIO EL 26/07/05 ANTES DESC
print 'Titulo valorado---------------------------------------->'
print @tituloValorado
				end
--	print 'Es profesorados ??????'
--	print @esProfesorado 


if  @titulo2 is not null set  @TituloConcurrente =  @titulo2   
if  @titulo1 is not null set  @TituloConcurrente =  @titulo1
print 'titulo concurrente'
print @TituloConcurrente



		if @esProfesorado = 'S' and (@nivel_insc in (4,5) or (@nivel_insc =3  and @ciclo=2))  -- Solamente cuando se trate de nivel polimodal,superior o tercer ciclo de la egb
												 --Todos los títulos de Profesor de.... o Profesor en....., se consideran con capacitación docente para los cargos/asig. en las que sea habilitante o supletorio
		begin
					set  @tieneCapacitacion='S'
					set @FechaCapacitacion=@fechaEgreso
					--print 'tiene capacitacion por tener titulo de profesor con más de 4 años'
					if @fechalimite < @FechaCapacitacion  set @FechaCapacitacion=@fechalimite
				if  (@titulo3 is not null and @TituloConcurrente is null) set  @TituloConcurrente =  @titulo3
				print 'titulo concurrente'
				print @TituloConcurrente
		end


		print'titulo1, titulo2, titulo3'
		print @titulo1
		print @titulo2
		print @titulo3
		print 'Fecha Egreso del más nuevo'
		print @fechaEgreso
print 'categoria definitiva ' +cast(@categoriaDefinitiva as varchar)

		set @FechaConsiderada=@fechaEgreso

		if @categoriaDefinitiva >= 2 --ya que si es = 1 no se justifica analizar si cambia de categoría
		begin
			print 'voy a calcular años de servicio'
			set @AñosServiciosNivel=0
			set @AñosServicioGenerales=0
			print @catporAntGeneral
			print @catporAntNivel
			print @catporAntCargo
			print @CatPorHorasDeCurso
			if isnull(@catporAntGeneral,0) > 0 and isnull(@AntiguedadGeneral,0)  > 0 exec pje_porAnosdeServicioGeneralesYEnZona @idInscripcion,@AñosServicioGenerales output ,@resultado output


			if isnull(@catporAntNivel,0) > 0  and isnull(@AntiguedadNivel,0) > 0 exec pje_porAnosdeServicioEnElNivel @idInscripcion,@AñosServiciosNivel  output,@resultado	output	

			if isnull(@catporAntCargo,0) > 0 and isnull(@AntiguedadCargo,0) > 0 exec pje_porAnosdeServicioEnElCargo @idInscripcion,@AñosServicioCargo output,@resultado output
			--set @CumpleAñosCargo = cast ('05/31/'+str(@resultado) as datetime)
		
			--set  @FechaAuxiliar = cast( str(datepart(mm, @fechaCierreDeInscripciones)) +'/' + str(datepart(dd, @fechaCierreDeInscripciones)) +'/' + str( @resultado) as datetime)
			--print 'Fecha Cumple ant. cargo ' + cast(@CumpleAñosCargo as varchar)
			

			if isnull(@CatPorHorasDeCurso,0) > 0 and isnull(@horasDeCursooCapacitacion,0) > 0 --si tiene concurrencias con horas de curso o capacitación
			begin
				 
				select @n= max( CapAg.idCapacitacion),@FechaCap=Min(Cap.Fecha)
				from
				tb_capacitacionesDelAgente CapAg
				join tb_capacitaciones Cap on CapAg.Capacitacion=Cap.idCapacitacion
				join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=Cap.GrupoIncumbencias
				join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia
				where ((agente=@idAgente  and cap.grupoincumbencias =99) or (agente=@idAgente  and h.CargoGenerico=@idCargogenerico and h.AsignaturaGenerica=@IdAsignaturaGenerica)) and  Cap.HorasCatedra >=@horasDeCursooCapacitacion and CapAg.Aprobado='S' and CapAg.FechaPresentacion <= @FechaLimite		

			end
		--	ojoooo servicios técnicos y en la provincia , no se necesitan acá pero recordar calcularla después  exec pje_porAnosdeServiciosTecnicos @idInscripcion,@AñosServiciosTecnicos ,@resultado   
		--	exec pje_porAnosdeServicioEnLaProvincia @idInscripcion,@AñosServiciosProvincia ,@resultado

			set @AñosServiciosModalidad = 0
			print 'categoria modalidad ' + cast( @catporAntModalidad as varchar)
			if @catporAntModalidad is not null exec pje_porAnosdeServicioEnLaModalidad @idInscripcion,@AñosServiciosModalidad output,@resultado output
			set @AñosServiciosModalidad = @AñosServiciosModalidad /2
		print '----------------------años de servicio en modalidad ' + cast(@AñosServiciosModalidad as varchar)

			print ' voy a analizar si cambia de categoria'
--	07-07-05		set @AñosServiciosModalidad = @modalidadComun   
			if isnull(@antiguedadGeneral,0) >0 and @AñosServicioGenerales >= @antiguedadGeneral and @catporAntGeneral < @categoriaAmpliada 
			begin
				set @categoriaAmpliada=@catporAntGeneral
				if @categoriaAmpliada = 1 or @categoriaAmpliada = 2  set @docentePorAntGeneral=1--seteo una variable para saber por que concepto pasa a ser docente
			end
			if isnull(@antiguedadNivel,0) >0 and @AñosServiciosNivel >= @antiguedadNivel and @catporAntNivel < @categoriaAmpliada 
			begin
				set @categoriaAmpliada=@catporAntNivel
				if @categoriaAmpliada = 1 or @categoriaAmpliada = 2  set @docentePorAntNivel=1--seteo una variable para saber por que concepto pasa a ser docente
			end
			print 'a m' + cast (@antiguedadModalidad as varchar)
			print 'as m' + cast (@AñosServiciosModalidad as varchar)
			print 'cat por ant m' + cast (@catporantModalidad as varchar)
			print 'cat ampliada' + cast (@categoriaAmpliada as varchar)
			if isnull(@antiguedadModalidad,0)>0 and @AñosServiciosModalidad >= @antiguedadModalidad and @catporAntModalidad < @categoriaAmpliada 
			begin
				print 'cambia por años en modalidad'
				set @categoriaAmpliada=@catporAntModalidad
				if @categoriaAmpliada = 1 or @categoriaAmpliada = 2  set @docentePorAntModalidad =1--seteo una variable para saber por que concepto pasa a ser docente
			end
			print 'Antig.Cargo'
			print @antiguedadCargo
			print 'Años servicio cargo'
			print @AñosServicioCargo
			if isnull(@antiguedadCargo,0) > 0 and @AñosServicioCargo >= @antiguedadCargo and @catporAntCargo < @categoriaAmpliada 
			begin
				set @categoriaAmpliada=@catporAntCargo
				print ' cambia por ant.cargo'
				if @categoriaAmpliada = 1 or @categoriaAmpliada = 2  set @docentePorAntCargo=1--seteo una variable para saber por que concepto pasa a ser docente
				print 'fecha considerada................................> '
				print @FechaConsiderada
			end

			if @n  is not null and  @catporhorasdeCurso < @categoriaAmpliada 
			begin
				set @categoriaAmpliada=@catporhorasdeCurso
				--print ' cambia por horas de curso'
				if @categoriaAmpliada = 1 or @categoriaAmpliada = 2  set @docentePorHsCurso=1--seteo una variable para saber por que concepto pasa a ser docente
			end


			if @DocenteporAntGeneral=1 and  @categoriaAmpliada < @categoriaDefinitiva -- debería entrar acá cuando pasa a ser docente por tener x cantidad de años en el cargo
			begin									      -- en este caso debo buscar la fecha más nueva entre la del/los titulo/s y el exedente
				set @exedente = ABS (@antiguedadCargo  - @AñosServicioCargo)	
				set  @FechaAuxiliar = cast( str(datepart(mm, @fechaCierreDeInscripciones)) +'/' + str(datepart(dd, @fechaCierreDeInscripciones)) +'/' + str(datepart(yy, @fechaCierreDeInscripciones) - @exedente) as datetime)	 				
				 if @FechaConsiderada < @FechaAuxiliar     set @fechaConsiderada=@fechaAuxiliar        -- en fecha considerada guardo la fecha más nueva
				print ' cambia por ant.general'
				print 'fecha considerada................................> '
				print @FechaConsiderada
			end
			if @DocenteporAntNivel=1 and  @categoriaAmpliada < @categoriaDefinitiva -- debería entrar acá cuando pasa a ser docente por tener x cantidad de años en el cargo
			begin									      -- en este caso debo buscar la fecha más nueva entre la del/los titulo/s y el exedente
				set @exedente = ABS(@antiguedadNivel  - @AñosServiciosNivel)	
				set  @FechaAuxiliar = cast( str(datepart(mm, @fechaCierreDeInscripciones)) +'/' + str(datepart(dd, @fechaCierreDeInscripciones)) +'/' + str(datepart(yy, @fechaCierreDeInscripciones) - @exedente) as datetime)	 				
				 if @FechaConsiderada < @FechaAuxiliar     set @fechaConsiderada=@fechaAuxiliar        -- en fecha considerada guardo la fecha más nueva
				print ' cambia por ant.Nivel'
				print 'fecha considerada................................> '
			end
			if @DocenteporAntModalidad=1 and  @categoriaAmpliada < @categoriaDefinitiva -- debería entrar acá cuando pasa a ser docente por tener x cantidad de años en el cargo
			begin									      -- en este caso debo buscar la fecha más nueva entre la del/los titulo/s y el exedente
				set @exedente =ABS(@AñosServiciosModalidad - @antiguedadModalidad) --@antiguedadModalidad  - @AñosServiciosModalidad	
				set  @FechaAuxiliar = cast( str(datepart(mm, @fechaCierreDeInscripciones)) +'/' + str(datepart(dd, @fechaCierreDeInscripciones)) +'/' + str(datepart(yy, @fechaCierreDeInscripciones) - @exedente) as datetime)	 				
			 	if @FechaConsiderada < @FechaAuxiliar     set @fechaConsiderada=@fechaAuxiliar        -- en fecha considerada guardo la fecha más nueva
				print ' cambia por ant.Modalidad'
				print 'fecha considerada................................> '
			end
			if @DocenteporAntCargo=1 and  @categoriaAmpliada < @categoria -- debería entrar acá cuando pasa a ser docente por tener x cantidad de años en el cargo
			begin									      -- en este caso debo buscar la fecha más nueva entre la del/los titulo/s y el exedente, es decir la antigûedad de titulo sería la mas nueva entre
					  print ' fecha considerada antes doc cargo ' + cast(@fechaconsiderada as varchar) 							-- la fecha de egreso del titulo y la fecha a partir de la que  que cumple con los años requeridos para cambiar la valoración del título
				set @exedente =  ABS(@AñosServicioCargo - @antiguedadCargo)  
				  print '  @exedente ' + cast( @exedente as varchar) 
				 print '  @fechaegreso ' + cast( @fechaegreso as varchar)  
                                                                  print '@fechaCierreDeInscripciones ' + cast( @fechaCierreDeInscripciones as varchar)  
				set  @FechaAuxiliar = cast( str(datepart(mm, @fechaCierreDeInscripciones)) +'/' + str(datepart(dd, @fechaCierreDeInscripciones)) +'/' + str(datepart(yy, @fechaCierreDeInscripciones) - @exedente) as datetime)	 				
                                                               --  print ' fechafechaauxiliar ' + cast(@FechaAuxiliar as varchar) 
				-- if @FechaConsiderada < @FechaAuxiliar     set @fechaConsiderada=@fechaAuxiliar        -- en fecha considerada guardo la fecha más nueva
				--print ' Es docente por antig. en el cargo'
				--print 'fecha considerada................................> '
				--print @FechaConsiderada


			end

			if @docentePorHsCurso=1 and  @categoriaAmpliada < @categoria -- debería entrar acá cuando pasa a ser docente por tener x cantidad de años en el cargo
			begin									      -- en este caso debo buscar la fecha más nueva entre la del/los titulo/s y el exedente, es decir la antigûedad de titulo sería la mas nueva entre
				--@fechaEgreso	,@FechaCap							-- la fecha de egreso del titulo y la fecha a partir de la que  que cumple con los años requeridos para cambiar la valoración del título
				 if @FechaConsiderada < @FechaCap     set @fechaConsiderada=@FechaCap        -- en fecha considerada guardo la fecha más nueva entre la del título y la fecha de la capacitación
			end

--			print ' -------*****************'

			if @categoriaAmpliada < @categoriaDefinitiva  set @categoriaDefinitiva=@categoriaAmpliada

			if @tieneCapacitacionParaHabilitantes='S' and @categoriaDefinitiva in (3,6) -- Si tiene cap. para habilitante (tiene un titulo de profesor) y tiene categoría  habilitante o supletorio , entonces pasa a ser hab o suplet. con capacitacion
			begin
				if  @categoriaDefinitiva=3 set @categoriaDefinitiva=2
				if  @categoriaDefinitiva=6  set @categoriaDefinitiva=5 -- SI ES SUPLETORIO PASA A SUPL.CON CAPACITACION PERO SOLAMENTE PARA LOS CARGOS (AUXILIAR DOCENTE, AUX SECRETARIA, ETC ; NO PARA EL PROFESOR)

				--print  'Fecha considerada ' + cast(  @FechaConsiderada as varchar)

				if @FechaConsiderada < @FechaCapacitacion   and @nivel_insc = 4   set @fechaConsiderada=@FechaCapacitacion

				--print  'Fecha considerada 2 ' + cast(  @FechaConsiderada as varchar)

				if  (@titulo3 is not null and @TituloConcurrente is  null ) set  @TituloConcurrente =  @titulo3
				print 'titulo concurrente'
				print @TituloConcurrente
				print 'Tiene capacitacion para habilitantes '
				print 'fechacap '+cast(@fechacap as varchar)+' fechacapacitacion '+cast(@fechacapacitacion as varchar)
				print @FechaConsiderada
				print @Fechaauxiliar
			end


			-- me fijo si tiene un estudio parcial con el 75% de la carrera aprobada, en este caso su titulo debe tener categoría: " Profesorado inconcluso es decir 15 puntos"
			
	 		if @tieneCapacitacion='S' and @categoriaDefinitiva=3 set @categoriaDefinitiva=2 --si la categoria es 3( Habilitante) con la capacitación docente pasa a ser habilitante con capacitación docente

 			if @tieneCapacitacion='S' and @categoriaDefinitiva=6 set @categoriaDefinitiva=5 --si la categoria es 6( Supletorio) con la capacitación docente pasa a ser Supletorio con capacitación docente
			
		--print '##############################2'

anulado el 16/08/2005	 se arregló arriba		

			if @categoriaDefinitiva > 4 
			begin
			  	select @tituloValorado = EP.titulo, @PorcentajeAprobado=(CantidadMateriasAprobadas*100 / case when MateriasPlan=0 then 1 else MateriasPlan end)  --distinct act.Titulo1,act.Titulo2,AcT.cargoGenerico,AcT.asignaturaGenerica,MateriasPlan,CantidadMateriasAprobadas,valorDeAcumulacion,(CantidadMateriasAprobadas *100/ MateriasPlan),(cantidadMatPedagogicasAprobadas*100 / TotalMAtPedagogicasPlan)
				from
					tb_EstudiosParciales EP
					join tb_anexoTitulos Anexo on EP.titulo=anexo.titulo3 
					join tb_gruposDeIncumbencias G on G.idGrupoIncumbencia=EP.GrupoIncumbencias
					join tb_incumbencias h on G.idGrupoIncumbencia=h.grupoIncumbencia		
				 where anexo.categoria=1 and EP.agente=@idAgente and Anexo.cargoGenerico=@IdCargoGenerico and Anexo.asignaturaGenerica=@IdAsignaturaGenerica and  
					      (CantidadMateriasAprobadas*100 / case when MateriasPlan=0 then 1 else MateriasPlan end) >= 60--   (G.IDgrupoIncumbencia= @grupoIncumbencia OR  G.IDgrupoIncumbencia=99)   and (cantidadMatPedagogicasAprobadas*100 / TotalMAtPedagogicasPlan) >= 60
				print '% aprobado'
				print @PorcentajeAprobado
				 if isnull (@PorcentajeAprobado,0) >= 60 and (@IdAsignaturaGenerica = 2800 or @IdAsignaturaGenerica = 7800) set @categoriaDefinitiva = 6  -- !!!!!!!!!!!!!!ojoooooooooooo ver esta chanchadita !!!!!!!!!!!
				 if isnull (@PorcentajeAprobado,0) >= 75 and ((@nivel_insc = 3 and @ciclo = 2) or @nivel_insc in(4,5))  set @categoriaDefinitiva = 4
				 if isnull (@PorcentajeAprobado,0) >= 60 and @IdAsignaturaGenerica in  (35,405,320,620) set @categoriaDefinitiva = 6  -- con el 60% de la carrera pasa a ser supletorio para ingles !!!!!!!!!!!!!!ojoooooooooooo ver esta chanchadita !!!!!!!!!!!
			end
			print 'categoría definitiva'
			print @categoriaDefinitiva


		end --si categoria <>1	

		if @categoria < @categoriaDefinitiva  set @categoriaDefinitiva=@categoria


--			if @tieneCapacitacion='S' and @categoriaDefinitiva=2 
--			begin
--				if @FechaConsiderada < @FechaCapacitacion     set @fechaConsiderada=@FechaCapacitacion
--				print 'Tiene capacitacion  '
--				print @FechaConsiderada
--				print @Fechaauxiliar
--			end


	end --si @categoria < @categoriadefinitiva		
		


-- por dictamen del JUEZ ver doc = 12152906 MORENO VILLARROYA, ISOLINA
	if  @idagente=61431 and @idasignaturagenerica in (2115,7115) 
		begin
			set @categoriaDefinitiva=5
			set @puntajePorTitulo=12
		end

	if  @idagente=61431 and @idasignaturagenerica in (2700,2750,7700,7750) 
		begin
			set @categoriaDefinitiva=1
			set @puntajePorTitulo=27
			set @antiguedadTitulo=0.75
		end




	fetch next from a into @Titulo1,@Titulo2,@Titulo3,@categoria,@AntiguedadGeneral,@catPorAntGeneral,@AntiguedadNivel,@CatPorAntNivel,@AntiguedadModalidad,@CatPorAntModalidad,@AntiguedadCargo,@CatPorAntCargo,@horasDeCursooCapacitacion, @CatPorHorasDeCurso,@EsTituloEspecifico ,@esprofesorado ,@Fecha_Egreso 		
	end --en del while
	CLOSE a
	DEALLOCATE a

	set @resultado = 0
	print ' categoriadefinitiva'
	print @categoriaDefinitiva

	 select @puntajePorTitulo = isnull(puntaje,0.0) from tb_categoriasDeTitulo  where idcategoria = @categoriaDefinitiva
	if @nivel_insc=4 set @tieneTituloEspecifico=-1 --Nivel Polimodal o egb3 no lleva titulo específico
	
	print 'puntaje por titulo'
	print  @puntajePorTitulo
	--set @pje=15
	print 'titulo considerado'
	print @tituloValorado 
	print 'fecha considerada'
	print @fechaConsiderada
	print '@numeroregistro'
	print @NroRegistro
	print '@Titulo Especifico'
	print @EsTituloEspecifico
--             guardo los datos del titulo valorado para orden de merito 
--             modificación hecha el 05/08/05


	--print ' update tb_inscripcionesconvocatorias set  titulovalorado= ' + cast( @tituloValorado as varchar )+', categoriadetitulo =' + cast(@categoriaDefinitiva as varchar ) + ' where  idInscripcionConvocatoria=' + cast (@idInscripcion as  varchar)

	update tb_inscripcionesconvocatorias set  tituloconcurrente= @Tituloconcurrente, titulovalorado=@tituloValorado, categoriadetitulo =  @categoriaDefinitiva , PromedioTitulo=@promedio ,TituloEspecifico=case @tieneTituloEspecifico when -2 then 'S' else 'N' end ,TituloRegistrado = case when  @NroRegistro <> 0 then 'S' else 'N' end   where  idInscripcionConvocatoria=@idInscripcion
--	update tb_inscripcionesconvocatorias set  titulovalorado=@tituloValorado, categoriadetitulo =  @categoriaDefinitiva , PromedioTitulo=@promedio ,TituloEspecifico=isnull(@EsTituloEspecifico,'N') ,TituloRegistrado = case when  @NroRegistro <> 0 then 'S' else 'N' end   where  idInscripcionConvocatoria=@idInscripcion

	if @categoriaDefinitiva in (1,2) set  @AntiguedadTitulo = 0.25 * floor (datediff(dd,@fechaConsiderada,@fechaCierreDeInscripciones) /365)
                print ' fecha considerada ' + cast(@fechaconsiderada as varchar) 
   	print ' fecha cierre ' + cast(@fechaCierreDeInscripciones as varchar) 

	
	if  @idTipoConvocatoria  in (1,2,9)  -- TipoConvocatoria = 1  ingreso,interinatos y suplencias ; 9=acumulacion de cargos
	begin
			select @c1=case
				when @idTipoConvocatoria= 1 then 190
				when @idTipoConvocatoria= 9 then 544
				when @idTipoConvocatoria= 2 then 660
			end

		if @antiguedadTitulo > 1.5  set @AntiguedadTitulo=1.5 
		print 'Antiguedad de título'
		print @AntiguedadTitulo
		if exists(select top 1 inscripcion from tb_calificacionesdeinscripcion where inscripcion = @idInscripcion and concepto = @c1)
			update tb_calificacionesdeinscripcion set puntaje=isnull(@antiguedadTitulo,0) where inscripcion=@idInscripcion and concepto=@c1
		else 	insert tb_calificacionesdeinscripcion (Inscripcion,Concepto,Puntaje) values (@idInscripcion,@c1,isnull(@antiguedadTitulo,0)) 
	end		

			select @c2=case --promedio de titulo
				when @idTipoConvocatoria= 1 then 245
				when @idTipoConvocatoria= 2 then 331
				when @idTipoConvocatoria= 3 then 633
				when @idTipoConvocatoria= 9 then 581
				when @idTipoConvocatoria= 11 then 654
	
			end
			select @c3=case -- tiene titulo especifico
				when @idTipoConvocatoria= 1 then 246
				when @idTipoConvocatoria= 2 then 332
				when @idTipoConvocatoria= 3 then 634
				when @idTipoConvocatoria= 9 then 582
				when @idTipoConvocatoria= 11 then 659
			end
			select @c4=case --titulo registrado
				when @idTipoConvocatoria= 1 then 247
				when @idTipoConvocatoria= 2 then 333
				when @idTipoConvocatoria= 3 then 635
				when @idTipoConvocatoria= 9 then 583
				when @idTipoConvocatoria= 11 then 656
			end
			select @c5=case -- titulo valorado
				when @idTipoConvocatoria= 1 then 248
				when @idTipoConvocatoria= 2 then 334
				when @idTipoConvocatoria= 3 then 636
				when @idTipoConvocatoria= 9 then 584
				when @idTipoConvocatoria= 11 then 657
	
			end
	
	if exists(select top 1 inscripcion from tb_calificacionesdeinscripcion where inscripcion = @idInscripcion and concepto = @c2)
		update tb_calificacionesdeinscripcion set puntaje=isnull(@promedio,0) where inscripcion=@idInscripcion and concepto=@c2
	else	insert tb_calificacionesdeinscripcion (Inscripcion,Concepto,Puntaje) values (@idInscripcion,@c2,isnull(@promedio,0))

	if exists(select top 1 inscripcion from tb_calificacionesdeinscripcion where inscripcion = @idInscripcion and concepto = @c3)-- @tieneTituloEspecifico=-1 significa que no tiene y si vale  -2 Si tiene, -9 = indefinido
		update tb_calificacionesdeinscripcion set puntaje=isnull(@tieneTituloEspecifico,0) where inscripcion=@idInscripcion and concepto=@c3
	else 	insert tb_calificacionesdeinscripcion (Inscripcion,Concepto,Puntaje) values (@idInscripcion,@c3,isnull(@tieneTituloEspecifico,-9)) 

	if exists(select top 1 inscripcion from tb_calificacionesdeinscripcion where inscripcion = @idInscripcion and concepto = @c4)-- Titulo registrado
		update tb_calificacionesdeinscripcion set puntaje=isnull(@NroRegistro,0) where inscripcion=@idInscripcion and concepto=@c4
	else 	insert tb_calificacionesdeinscripcion (Inscripcion,Concepto,Puntaje) values (@idInscripcion,@c4,isnull(@NroRegistro,0)) 

	if exists(select top 1 inscripcion from tb_calificacionesdeinscripcion where inscripcion = @idInscripcion and concepto = @c5)-- Titulo valorado
		update tb_calificacionesdeinscripcion set puntaje=isnull(@tituloValorado,0) where inscripcion=@idInscripcion and concepto=@c5
	else 	insert tb_calificacionesdeinscripcion (Inscripcion,Concepto,Puntaje) values (@idInscripcion,@c5,isnull(@tituloValorado,0)) 

	SET @Error = @@ERROR 
	IF @Error <> 0 GOTO Salir
--end
--else 
--	begin
--		insert tb_registroeventos (fecha,idusuario1,severidad,causa,idusuario2,descripcion) values (getdate(),isnull(user_id(),1),0,'puntajes por titulos',isnull(user_id(),1),'No se valoran titulos '+ str(@idtipoconvocatoria))
--		set @resultado =1
--	end
Salir:*/
IF @Error <> 0
begin
	print 'no tiene titulo docente' 
	ROLLBACK TRANSACTION
end
ELSE
	COMMIT TRANSACTION

	
GO
GRANT EXECUTE ON  [dbo].[pje_porTitulos] TO [Juntas]
GO
